package org.sgx.jsutil.client.jsfc;

import org.sgx.jsutil.client.JsFunction;

/**
 * these Java classes, usually instantiated anonymously, represent a JavaScript function. Subclasses of this type are named acordingly the function return type and parameter types.
 * 
 * <pre>
 * s: string - String
 * b: boolean - boolean
 * o: object - JavaScriptObject
 * a: array - JsArraymixed
 * n: number - double
 * v: void - void
 * </pre>
 * 
 * <p>For example, the class "nab" represents a function returning a number and accepting an array and a boolean as parameters</p>
 * 
 * <p>Use JsFunctionUtil for transforming JsFunctionCallback to native functions and viceversa. </p> 
 * @author sg
 * 
 */
public interface JsFunctionCallback {
JsFunction toNative();
}
